package com.mcxx.modules.minimumliving.service;


import com.mcxx.modules.miniSalvation.family.dto.BankAbutmentDTO;
import com.mcxx.modules.miniSalvation.fundpay.dto.SingleRollDTO;
import com.mcxx.modules.miniSalvation.fundpay.param.FundPayFamilyParam;
import com.mcxx.modules.miniSalvation.fundpay.param.FundPayParam;
import com.mcxx.result.BaseResult;
import com.yinhai.ta404.component.audit.vo.ExcelInfo;
import com.yinhai.ta404.core.restservice.requestbean.PageParam;
import com.yinhai.ta404.core.restservice.resultbean.Page;
import com.yinhai.ta404.core.security.vo.UserAccountVo;

import java.util.List;
import java.util.Map;


public interface SingleFundPayService {


    void saveSingCapitalFundPay(SingleRollDTO param, UserAccountVo userAccountVo);



    Map<String, String> gainBankInfo(BankAbutmentDTO dto, UserAccountVo userAccountVo);



    ExcelInfo exportExcel(String fundpayId);

    void confirmFundPay(String fundPayId, UserAccountVo curUserAccount);


    int verifyNoCompleteNotice(String fundPayId);

    BaseResult<Map<String, List<String>>> cancelFundPay(List<String> fundPayIdList);


    Page getPageFundPayException(String fundPayId, PageParam pageParam);


    String checkCanSyncFundPayData(String fundPayId);

    String syncFundPayData(String fundPayId);


    void addFundPayBiz(SingleRollDTO standFundPayDTO, UserAccountVo userAccountVo);


    ExcelInfo exportFundPayRoll(String exportType, List<String> idsList, FundPayParam param, UserAccountVo curUserAccount);


    ExcelInfo exportFundPayRollDetail(FundPayFamilyParam param, UserAccountVo curUserAccount);
}
